*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

table {
  border-collapse: collapse;
  border-spacing: 0;
  border: 2px solid #000000; }

th {
  border: 2px solid #000000; }

td {
  border: 1px solid #000000; }

html {
  scroll-behavior: smooth;
  position: relative;
  min-height: 100%; }

body {
  margin: 0;
  margin-bottom: 350px;
  font-family: "Open Sans", sans-serif; }

@media (max-width: 576px) {
  body {
    margin-bottom: 600px; } }
h1, h2, h3, h4 {
  font-weight: 600;
  color: #425469;
  font-family: "Muli", sans-serif;
  line-height: 1.5; }

h1.title {
  text-align: center;
  text-transform: uppercase; }

a, a:hover {
  color: #0095AF; }

/**** CODE BLOCK ****/
pre code {
  color: white !important;
  background-color: black;
  display: block;
  padding: 20px;
  overflow-x: scroll; }

/**** NAVBAR ****/
.navbar .navbar-brand {
  padding: 0 !important; }

ul.navbar-nav li.dropdown:hover > div.dropdown-menu {
  display: block; }

/**** BUTTONS ****/
.btn-outline-primary {
  border-color: #0095AF;
  color: #0095AF;
  border-width: 2px;
  border-radius: 5px; }

.btn-outline-primary:hover,
.btn-outline-primary:active,
.btn-outline-primary:visited,
.btn-outline-primary:focus {
  background-color: #0095AF;
  border-color: #0095AF;
  cursor: pointer; }

.btn-primary {
  color: white !important;
  background-color: #0095AF;
  border: none;
  transition: 0.5s; }

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
  background-color: #006a7c;
  border-color: #006a7c; }

/**** SIDEBAR ****/
.sidenav-top {
  width: 250px;
  height: 130px;
  background-color: #E6E6E6;
  position: fixed;
  top: 0px;
  text-align: center; }
  .sidenav-top div.search {
    margin-top: 20px; }
    .sidenav-top div.search input {
      width: 88%;
      padding: 3px;
      padding-right: 25px; }
    .sidenav-top div.search button {
      color: #0095AF;
      background-color: transparent;
      border: none;
      cursor: pointer;
      padding: 0px;
      position: absolute;
      right: 10px;
      margin: 3px 10px; }
  .sidenav-top div.sidenav-brand {
    height: 71px;
    padding-top: 8px;
    padding-bottom: 8px;
    padding-left: 16px;
    text-align: left; }

.sidenav {
  height: calc(100vh - 130px);
  top: 130px;
  width: 250px;
  position: fixed;
  left: 0;
  background-color: #E6E6E6;
  overflow-x: hidden;
  padding-bottom: 25px; }
  .sidenav a {
    text-decoration: none;
    color: #0095AF;
    display: block; }
  .sidenav a.item {
    padding: 10px 8px 5px 15px;
    font-size: large;
    font-weight: 600; }
  .sidenav a.subitem {
    padding: 4px 8px 5px 30px;
    font-size: normal; }
  .sidenav a.active {
    font-weight: 600; }

div#doc-container {
  margin-left: 250px;
  padding: 30px 35px;
  width: auto; }
  div#doc-container div.edit {
    text-align: right; }
  div#doc-container img {
    width: 80%; }

div.navbuttons {
  text-align: center; }
  div.navbuttons button {
    margin: 10px; }

/**** HEADER ****/
header {
  min-height: 350px;
  background-color: #E6E6E6;
  text-align: center;
  align-items: center;
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2); }
  header a {
    text-decoration: underline; }
  header h1 {
    padding-top: 20px; }
  header p {
    padding: 12px;
    color: #0095AF;
    font-size: large;
    width: 60%;
    margin: auto; }
  header .btn-outline-primary {
    margin: 10px; }
  header .btn-primary {
    border: 2px #0095AF solid;
    margin: 10px; }
  header a:hover {
    color: white;
    text-decoration: none; }

/**** CARD ****/
div.card {
  width: 18rem;
  min-height: 320px;
  margin: auto;
  margin-top: 5rem;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
  transition: 0.3s;
  border-radius: 5px; }
  div.card div.fav {
    margin: -2.8rem auto;
    background-color: white;
    padding: 0px 18px;
    border-radius: 50px;
    border: 1px solid lightgrey;
    font-size: 70px;
    box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.2); }
  div.card h5.card-title {
    text-transform: uppercase;
    margin-top: 2.8rem;
    color: #0095AF;
    font-weight: 600;
    font-size: 1.4rem; }
  div.card img {
    max-width: 200px;
    max-height: 200px;
    display: block;
    margin: auto; }

div.card:hover {
  box-shadow: 0 8px 12px 0 rgba(0, 0, 0, 0.2); }

div.card-body {
  text-align: center; }

div.toc {
  margin-right: 280px; }
  div.toc h1 {
    margin-top: 100px;
    font-size: 28px; }
  div.toc h2 {
    font-size: 25px; }
  div.toc h3 {
    font-size: 22px; }

/**** TABLE OF CONTENTS ****/
ul#markdown-toc {
  position: absolute;
  right: 20px;
  border: 2px grey solid;
  border-radius: 15px;
  width: 280px;
  padding: 5px 12px;
  line-height: 30px;
  list-style-type: none; }
  ul#markdown-toc li {
    list-style-type: none;
    border-bottom: 1px grey solid; }
    ul#markdown-toc li ul {
      padding-left: 25px !important; }
      ul#markdown-toc li ul li {
        border: none; }

@media (max-width: 800px) {
  ul#markdown-toc {
    position: static; }

  div.toc {
    margin-right: 0px; } }
/**** SCROLL TO TOP BUTTON ****/
button#myBtn {
  display: none;
  position: fixed;
  bottom: 20px;
  right: 30px;
  z-index: 99;
  font-size: 20px;
  border: none;
  outline: none;
  background-color: lightgrey;
  color: white;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 5px;
  transition: 1s; }

#myBtn:hover {
  background-color: #0095AF; }

/**** SEARCH PAGE ****/
div.search {
  text-align: center; }
  div.search label {
    font-size: 24px;
    color: #0095AF; }
  div.search input#search-box {
    border: none;
    border-bottom: 1px solid lightgrey;
    outline: none;
    margin-left: 8px;
    padding: 3px;
    padding-left: 10px;
    font-size: large;
    width: 300px; }
  div.search button {
    padding: 4px 8px;
    margin-left: 10px;
    font-size: normal; }

ul#search-results {
  list-style-type: none; }
  ul#search-results a {
    text-decoration-color: black; }

/**** BLOG FORMATTING ****/
div.post img {
  width: 80%; }
div.post iframe {
  width: 100%; }

div.blog img {
  display: none; }

div#posts {
  margin-right: 180px; }

div#contribute {
  position: fixed;
  right: 30px;
  width: 180px; }
  div#contribute h5 {
    font-weight: 400; }
  div#contribute hr {
    margin-top: 8px; }

@media (max-width: 800px) {
  div#contribute {
    position: static; }

  div.toc {
    margin-right: 0px; } }
/**** FOOTER ****/
footer {
  min-height: 250px;
  width: 100%;
  padding-top: 40px;
  position: absolute;
  bottom: 0;
  background-color: #E6E6E6;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
  color: grey; }
  footer p {
    line-height: 15px; }

@media (max-width: 576px) {
  body {
    margin-bottom: 575; } }
/***** SPECIAL THINGS ****/
div.sponsor-ask {
  text-align: center;
  font-size: larger;
  margin-top: 2rem; }

/**
 * Syntax highlighting styles
 */
.highlight {
  background: #fff; }
  .highlight .c {
    color: #998;
    font-style: italic; }
  .highlight .err {
    color: #a61717;
    background-color: #e3d2d2; }
  .highlight .k {
    font-weight: bold; }
  .highlight .o {
    font-weight: bold; }
  .highlight .cm {
    color: #998;
    font-style: italic; }
  .highlight .cp {
    color: #999;
    font-weight: bold; }
  .highlight .c1 {
    color: #998;
    font-style: italic; }
  .highlight .cs {
    color: #999;
    font-weight: bold;
    font-style: italic; }
  .highlight .gd {
    color: #000;
    background-color: #fdd; }
  .highlight .gd .x {
    color: #000;
    background-color: #faa; }
  .highlight .ge {
    font-style: italic; }
  .highlight .gr {
    color: #a00; }
  .highlight .gh {
    color: #999; }
  .highlight .gi {
    color: #000;
    background-color: #dfd; }
  .highlight .gi .x {
    color: #000;
    background-color: #afa; }
  .highlight .go {
    color: #888; }
  .highlight .gp {
    color: #555; }
  .highlight .gs {
    font-weight: bold; }
  .highlight .gu {
    color: #aaa; }
  .highlight .gt {
    color: #a00; }
  .highlight .kc {
    font-weight: bold; }
  .highlight .kd {
    font-weight: bold; }
  .highlight .kp {
    font-weight: bold; }
  .highlight .kr {
    font-weight: bold; }
  .highlight .kt {
    color: #458;
    font-weight: bold; }
  .highlight .m {
    color: #099; }
  .highlight .s {
    color: #d14; }
  .highlight .na {
    color: #008080; }
  .highlight .nb {
    color: #0086B3; }
  .highlight .nc {
    color: #458;
    font-weight: bold; }
  .highlight .no {
    color: #008080; }
  .highlight .ni {
    color: #800080; }
  .highlight .ne {
    color: #900;
    font-weight: bold; }
  .highlight .nf {
    color: #900;
    font-weight: bold; }
  .highlight .nn {
    color: #555; }
  .highlight .nt {
    color: #000080; }
  .highlight .nv {
    color: #008080; }
  .highlight .ow {
    font-weight: bold; }
  .highlight .w {
    color: #bbb; }
  .highlight .mf {
    color: #099; }
  .highlight .mh {
    color: #099; }
  .highlight .mi {
    color: #099; }
  .highlight .mo {
    color: #099; }
  .highlight .sb {
    color: #d14; }
  .highlight .sc {
    color: #d14; }
  .highlight .sd {
    color: #d14; }
  .highlight .s2 {
    color: #d14; }
  .highlight .se {
    color: #d14; }
  .highlight .sh {
    color: #d14; }
  .highlight .si {
    color: #d14; }
  .highlight .sx {
    color: #d14; }
  .highlight .sr {
    color: #009926; }
  .highlight .s1 {
    color: #d14; }
  .highlight .ss {
    color: #990073; }
  .highlight .bp {
    color: #999; }
  .highlight .vc {
    color: #008080; }
  .highlight .vg {
    color: #008080; }
  .highlight .vi {
    color: #008080; }
  .highlight .il {
    color: #099; }
